As digital media technology continues to advance and the cost of storage continues to decline, users increasingly host and consume digital media on their own primary computers (e.g., desktop PCs). Examples of such digital media include music, video, still pictures, and so on.
In addition, a corresponding increase in the availability of portable media playback devices such as personal digital assistants (PDAs), hand-held computers, laptop computers, and smart phones is providing users more ubiquitous access to information than ever. As users rely more and more on such portable devices, there is a growing need for applications that effectively transfer digital media from source devices, such as primary computers, to the portable playback devices.
Transcoding is a way of altering a media file through one or more transcoding processes so the file can be played back on a particular playback device. Thus, transcoding converts a source media file having certain characteristics into a target media file having different characteristics. Such transcoding processes can include, for example, converting a media file from one format to another (e.g., MP3 to WMA), changing the codec of the file, down-sampling the file to a lower bit rate to reduce the amount of storage space needed on the playback device, adapting the screen size of the file (i.e., height/width) so video appears correctly on the playback device, and so on.
Deciding whether a source media file needs to be transcoded for playback on a particular target playback device and what format to transcode the source file to based on the target playback device's capabilities are important steps in the transcoding process. That is, a source media file on a source device may be formatted correctly for playback on one target playback device, but may need to have one or more parameters reformatted before it can be played back on a different target playback device. There is a continual need to improve the transcoding process through such decision steps in order to ensure that source files are properly and timely transcoded for transfer and playback on different target playback devices.